我们已经了解了C++模板如何将泛型定义扩展为一系列相关的类、函数或变量。尽管这是一种强大的机制，但对于模板参数的特定替换，操作的泛化形式远非最佳。

支持泛型编程的其他流行编程语言中，C++有些独特，因为它具有丰富的特性，支持用更特殊方式替换泛型定义。本章中，将研究两种C++语言机制，它们允许泛化的特殊形式:模板特化和函数模板重载。